package com.nmsl.domain;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.nmsl.common.annotation.Excel;
import com.nmsl.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 医生排班表
 * @TableName doctor_schedule
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class GyfDoctorSchedule extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 排班id */
    private Integer scheduleId;

    /** 员工id（员工表）（医生） */
    @Excel(name = "员工id", readConverterExp = "员=工表")
    private Integer doctorId;

    private GyfEmployee employee;

    /**
     * 排班日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "排班日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date scheduleDate;


    /** 排班时间编号 */
    @Excel(name = "排班时间编号")
    private Long scheduleTimeId;
    private ScheduleTimeDistribution scheduleTimeDistribution;
    /** 扩展字段1 */
    @Excel(name = "扩展字段1")
    private String ext1;

    /** 扩展字段2 */
    @Excel(name = "扩展字段2")
    private String ext2;

    /** 扩展字段3 */
    @Excel(name = "扩展字段3")
    private String ext3;

    /** 扩展字段4 */
    @Excel(name = "扩展字段4")
    private String ext4;

    /** 扩展字段5 */
    @Excel(name = "扩展字段5")
    private String ext5;


    public void setDoctorId(int doctorId)
    {
        this.doctorId = doctorId;
    }



    public void setScheduleDate(Date scheduleDate)
    {
        this.scheduleDate = scheduleDate;
    }
    public Date getScheduleDate()
    {
        return scheduleDate;
    }
    public void setScheduleTimeId(Long scheduleTimeId)
    {
        this.scheduleTimeId = scheduleTimeId;
    }

    public Long getScheduleTimeId()
    {
        return scheduleTimeId;
    }
    public void setExt1(String ext1)
    {
        this.ext1 = ext1;
    }

    public String getExt1()
    {
        return ext1;
    }
    public void setExt2(String ext2)
    {
        this.ext2 = ext2;
    }

    public String getExt2()
    {
        return ext2;
    }
    public void setExt3(String ext3)
    {
        this.ext3 = ext3;
    }

    public String getExt3()
    {
        return ext3;
    }
    public void setExt4(String ext4)
    {
        this.ext4 = ext4;
    }

    public String getExt4()
    {
        return ext4;
    }
    public void setExt5(String ext5)
    {
        this.ext5 = ext5;
    }

    public String getExt5()
    {
        return ext5;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("scheduleId", getScheduleId())
                .append("doctorId", getDoctorId())
                .append("scheduleDate", getScheduleDate())
                .append("scheduleTimeId", getScheduleTimeId())
                .append("ext1", getExt1())
                .append("ext2", getExt2())
                .append("ext3", getExt3())
                .append("ext4", getExt4())
                .append("ext5", getExt5())
                .toString();
    }
}